local fn = vim.fn

-- Automatically install packer
local install_path = fn.stdpath("data") .. "/site/pack/packer/start/packer.nvim"
if fn.empty(fn.glob(install_path)) > 0 then
	PACKER_BOOTSTRAP = fn.system({
		"git",
		"clone",
		"--depth",
		"1",
		"https://github.com/wbthomason/packer.nvim",
		install_path,
	})
	print("Installing packer close and reopen Neovim...")
	vim.cmd([[packadd packer.nvim]])
end

-- Autocommand that reloads neovim whenever you save the plugins.lua file
vim.cmd([[
  augroup packer_user_config
    autocmd!
    autocmd BufWritePost plugins.lua source <afile> | PackerSync
  augroup end
]])

-- Use a protected call so we don't error out on first use
local status_ok, packer = pcall(require, "packer")
if not status_ok then
	return
end

-- Have packer use a popup window
packer.init({
	display = {
		open_fn = function()
			return require("packer.util").float({ border = "rounded" })
		end,
	},
})
-- 保存此文件自动更新安装软件
-- 注意PackerCompile改成了PackerSync
-- pugins.lua改成了plugins-setup.lua,适应本地文件名字
vim.cmd([[
    augroup packer_user_config
        autocmd!
        autocmd BufWritePost plugins-setup.lua source <afile> | PackerSync
    augroup end
]])

-- Install your plugins here
return packer.startup(function(use)
	use ("wbthomason/packer.nvim") -- Have packer manage itself	
	use ("folke/tokyonight.nvim")  -- 主题
    use {
    'nvim-lualine/lualine.nvim',   --状态栏
    requires = { 'nvim-tree/nvim-web-devicons', opt = true }
}
    use { 'nvim-tree/nvim-web-devicons'}
    use {'nvim-tree/nvim-tree.lua'} --文件树
    
    use {'christoomey/vim-tmux-navigator'} -- 用ctl-h,j,k,l定位窗口
    
     -- bufferline
    use {'akinsho/bufferline.nvim'}

    -- treesitter 
    use { 'nvim-treesitter/nvim-treesitter', run = ':TSUpdate' }
    use { 'p00f/nvim-ts-rainbow' } --配合treesitter,不同括号颜色区分

    --coc.nvim
    use { 'neoclide/coc.nvim', branch = 'release' } 

    --nvim-autopairs
    -- use {
    --     "windwp/nvim-autopairs",
    --     config = function() require("nvim-autopairs").setup {} end
    -- }

    -- indent-blankline
    use {"lukas-reineke/indent-blankline.nvim"}

    -- Comment.nvim
    use {
    'numToStr/Comment.nvim',
    config = function()
        require('Comment').setup()
    end
}


	if PACKER_BOOTSTRAP then
		require("packer").sync()
	end
end)

